home *** CD-ROM | disk | FTP | other *** search
/ Best Tools for JAVA / Best Tools for JAVA.iso / JAVA_ALL / RMI_OS / HOTJAVA1 / LIB / DTDS / HTML2.DTD next >
Encoding:
Text File  |  1996-10-30  |  12.5 KB  |  535 lines

  1. <!--    html2.dtd
  2.  
  3. Based on:
  4.         Document Type Definition for the HyperText Markup Language (HTML DTD)
  5.     with Mosaic Communications Corp Extensions
  6.  
  7.  
  8.     Author: Daniel W. Connolly <connolly@hal.com>
  9.  
  10. This version:
  11.     Document Type Definition for the HyperText Markup Language (HTML DTD)
  12.     with Sun Microsystems extensions.
  13.  
  14.     Author: Arthur van Hoff
  15.     Author: Herb Jellinek
  16. -->
  17.  
  18. <!ENTITY % HTML.Version
  19.     "-//Mosaic Comm. Corp.//DTD HTML//EN//2.0mcom"
  20.  
  21.         -- Typical usage:
  22.  
  23.             <!DOCTYPE HTML PUBLIC "-//Mosaic Comm. Corp.//DTD HTML//EN">
  24.         <html>
  25.         ...
  26.         </html>
  27.     --
  28.     >
  29.  
  30.  
  31. <!--================== Feature Test Entities ==============================-->
  32.  
  33. <!ENTITY % HTML.Recommended "IGNORE"
  34.     -- Certain features of the language are necessary for compatibility
  35.        with widespread usage, but they may compromise the structural
  36.        integrity of a document. This feature test entity enables
  37.        a more prescriptive document type definition that eliminates
  38.        the above features.
  39.     -->
  40.  
  41. <![ %HTML.Recommended [
  42.     <!ENTITY % HTML.Deprecated "IGNORE">
  43. ]]>
  44.  
  45. <!ENTITY % HTML.Deprecated "INCLUDE"
  46.     -- Certain features of the language are necessary for compatibility
  47.        with earlier versions of the specification, but they tend
  48.        to be used an implemented inconsistently, and their use is
  49.        deprecated. This feature test entity enables a document type
  50.        definition that eliminates these features.
  51.     -->
  52.  
  53. <!ENTITY % HTML.Highlighting "INCLUDE">
  54. <!ENTITY % HTML.Forms "INCLUDE">
  55.  
  56. <!--================== Imported Names =====================================-->
  57.  
  58. <!ENTITY % Content-Type "CDATA"
  59.     -- meaning a MIME content type, as per RFC1521
  60.     -->
  61.  
  62. <!ENTITY % HTTP-Method "GET | POST"
  63.     -- as per HTTP specification
  64.     -->
  65.  
  66. <!ENTITY % URI "CDATA"
  67.         -- The term URI means a CDATA attribute
  68.            whose value is a Uniform Resource Identifier,
  69.            as defined by 
  70.     "Universal Resource Identifiers" by Tim Berners-Lee
  71.     aka http://info.cern.ch/hypertext/WWW/Addressing/URL/URI_Overview.html
  72.     aka RFC 1630
  73.  
  74.     Note that CDATA attributes are limited by the LITLEN
  75.     capacity (1024 in the current version of html.decl),
  76.     so that URIs in HTML have a bounded length.
  77.  
  78.         -->
  79.  
  80.  
  81. <!-- DTD "macros" -->
  82.  
  83. <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
  84.  
  85. <!ENTITY % list " UL | OL | DIR | MENU " >
  86.  
  87.  
  88. <!--================ Character mnemonic entities ==========================-->
  89.  
  90. <!ENTITY % ISOlat1 SYSTEM "lat1html.ent">
  91. %ISOlat1;
  92.  
  93. <!ENTITY amp CDATA "&"     -- ampersand          -->
  94. <!ENTITY gt CDATA ">"      -- greater than       -->
  95. <!ENTITY lt CDATA "<"      -- less than          -->
  96. <!ENTITY quot CDATA """    -- double quote       -->
  97.  
  98. <!ENTITY nbsp  CDATA " "   -- non breaking space -->
  99.  
  100.  
  101. <!--=================== Text Markup =======================================-->
  102.  
  103. <![ %HTML.Highlighting [
  104.  
  105. <!ENTITY % font "STRIKE | U | TT | B | I | FONT | BIG | SMALL | SUP | SUB">
  106.  
  107. <!ENTITY % phrase "EM | STRONG | CODE | SAMP | DFN | KBD | VAR | CITE ">
  108.  
  109. <!ENTITY % text "#PCDATA | A | IMG | MAP | TABLE | BR | WBR | NOBR | CENTER | BASEFONT
  110.          | BLINK | %phrase | %font | APPLET | APP">
  111.  
  112. <!ENTITY % pre.content "#PCDATA | A | HR | BR | IMG | %font | %phrase">
  113.  
  114. <!ELEMENT (%font;|%phrase) - - (%text)+>
  115.  
  116. <!ELEMENT basefont - - ANY>
  117. <!ATTLIST basefont
  118.     SIZE CDATA #REQUIRED -- should be NUTOKEN, using size=plus3, e.g.-->
  119. <!ATTLIST font
  120.     SIZE CDATA #IMPLIED
  121.     COLOR CDATA #IMPLIED
  122. >
  123. ]]>
  124.  
  125. <!ENTITY % text "#PCDATA | A | IMG | BR | WBR | NOBR | CENTER">
  126.  
  127. <!ELEMENT BLINK - - ANY>
  128.  
  129. <!ELEMENT CENTER - - ANY>
  130.  
  131. <!ELEMENT BR    - O EMPTY>
  132. <!ATTLIST BR
  133.     CLEAR (left|right|all) #IMPLIED>
  134.  
  135. <!ELEMENT NOBR - - (%text)+>
  136. <!ELEMENT WBR  - O EMPTY>
  137.  
  138. <!--================== Link Markup ========================================-->
  139.  
  140. <![ %HTML.Recommended [
  141.     <!ENTITY % linkName "ID">
  142. ]]>
  143.  
  144. <!ENTITY % linkName "CDATA">
  145.  
  146. <!ENTITY % linkType "NAME"
  147.     -- a list of these will be specified at a later date -->
  148.  
  149. <!ENTITY % linkExtraAttributes
  150.         "REL %linkType #IMPLIED -- forward relationship type --
  151.         REV %linkType #IMPLIED -- reversed relationship type
  152.                               to referent data --
  153.         URN CDATA #IMPLIED -- universal resource number --
  154.  
  155.         TITLE CDATA #IMPLIED -- advisory only --
  156.         METHODS NAMES #IMPLIED -- supported public methods of the object:
  157.                                         TEXTSEARCH, GET, HEAD, ... --
  158.         ">
  159.  
  160. <![ %HTML.Recommended [
  161.     <!ENTITY % A.content   "(%text)+"
  162.     -- <H1><a name="xxx">Heading</a></H1>
  163.         is preferred to
  164.        <a name="xxx"><H1>Heading</H1></a>
  165.     -->
  166. ]]>
  167.  
  168. <!ENTITY % A.content   "(%heading|%text)+">
  169.  
  170. <!ELEMENT A     - - %A.content -(A)>
  171.  
  172. <!ATTLIST A
  173.     HREF %URI #IMPLIED
  174.     NAME %linkName #IMPLIED
  175.     TARGET CDATA #IMPLIED
  176.         %linkExtraAttributes;
  177.         >
  178.  
  179. <!--=================== Images ============================================-->
  180.  
  181. <!ENTITY % img.alt.default "#IMPLIED"
  182.     -- ALT attribute required in Level 0 docs -->
  183.  
  184. <!ELEMENT IMG    - O EMPTY --  Embedded image -->
  185. <!ATTLIST IMG
  186.         SRC %URI;  #REQUIRED     -- URI of document to embed --
  187.     ALT CDATA %img.alt.default;
  188.     ALIGN (left|right|top|texttop|middle|
  189.         absmiddle|baseline|bottom|absbottom) baseline
  190.     WIDTH NUMBER #IMPLIED
  191.     HEIGHT NUMBER #IMPLIED
  192.     BORDER NUMBER #IMPLIED
  193.     VSPACE NUMBER #IMPLIED
  194.     HSPACE NUMBER #IMPLIED
  195.         ISMAP (ISMAP) #IMPLIED
  196.     USEMAP CDATA #IMPLIED
  197.         >
  198.  
  199. <!ELEMENT MAP - - (AREA)*>
  200. <!ATTLIST MAP
  201.     NAME CDATA #REQUIRED
  202. >
  203.  
  204. <!ELEMENT AREA - O EMPTY>
  205. <!ATTLIST AREA
  206.     SHAPE CDATA #IMPLIED
  207.     COORDS CDATA #IMPLIED
  208.     HREF CDATA #IMPLIED
  209.     TARGET CDATA #IMPLIED
  210.         NOHREF (NOHREF) #IMPLIED
  211. >
  212.  
  213.  
  214. <!--=================== Paragraphs=========================================-->
  215.  
  216. <!ELEMENT P     - O (%text)+>
  217.  
  218.  
  219. <!--=================== Headings, Titles, Sections ========================-->
  220.  
  221. <!ELEMENT HR    - O EMPTY -- horizontal rule -->
  222. <!ATTLIST HR
  223.     SIZE NUMBER #IMPLIED
  224.     WIDTH NUTOKEN #IMPLIED
  225.     ALIGN (left|right|center) #IMPLIED
  226.     NOSHADE (NOSHADE) #IMPLIED>
  227.  
  228. <!ELEMENT ( %heading )  - -  (%text;)+>
  229.  
  230. <!ELEMENT TITLE - -  (#PCDATA)
  231.           -- The TITLE element is not considered part of the flow of text.
  232.              It should be displayed, for example as the page header or
  233.              window title.
  234.           -->
  235.  
  236.  
  237. <!--=================== Text Flows ========================================-->
  238.  
  239. <![ %HTML.Forms [
  240.     <!ENTITY % block.forms "| FORM | ISINDEX">
  241. ]]>
  242.  
  243. <!ENTITY % block.forms "">
  244.  
  245. <![ %HTML.Deprecated [
  246.     <!ENTITY % preformatted "PRE | XMP | LISTING">
  247. ]]>
  248.  
  249. <!ENTITY % preformatted "PRE">
  250.  
  251. <!ENTITY % block "P | %list | DL
  252.     | %preformatted
  253.     | BLOCKQUOTE %block.forms">
  254.  
  255. <!ENTITY % flow "(%text|%block)*">
  256.  
  257. <!ENTITY % pre.content "#PCDATA | A | HR | BR | IMG">
  258. <!ELEMENT PRE - - (%pre.content)+>
  259.  
  260. <!ATTLIST PRE
  261.         WIDTH NUMBER #implied
  262.         >
  263.  
  264. <![ %HTML.Deprecated [
  265.  
  266. <!ENTITY % literal "CDATA"
  267.     -- special non-conforming parsing mode where
  268.        the only markup signal is the end tag
  269.        in full
  270.     -->
  271.  
  272. <!ELEMENT XMP - -  %literal>
  273. <!ELEMENT LISTING - -  %literal>
  274. <!ELEMENT PLAINTEXT - O %literal>
  275.  
  276. ]]>
  277.  
  278.  
  279. <!--=================== Lists =============================================-->
  280.  
  281. <!ELEMENT DL    - -  (DT*, DD?)+>
  282. <!ATTLIST DL
  283.     COMPACT (COMPACT) #IMPLIED>
  284.  
  285. <!ELEMENT DT    - O (%text)+>
  286. <!ELEMENT DD    - O %flow>
  287.  
  288. <!ELEMENT (OL|UL) - -  (LI)+>
  289. <!ELEMENT (DIR|MENU) - -  (LI)+ -(%block)>
  290. <!ATTLIST (UL)
  291.     COMPACT (COMPACT) #IMPLIED
  292.     TYPE CDATA #IMPLIED
  293.         START NUMBER #IMPLIED
  294.     >
  295. <!ATTLIST (OL)
  296.     COMPACT (COMPACT) #IMPLIED
  297.     TYPE CDATA "1"
  298.     >
  299.  
  300. <!ELEMENT LI    - O %flow>
  301. <!ATTLIST LI
  302.     TYPE CDATA #IMPLIED
  303.     VALUE CDATA #implied
  304.         START NUMBER #IMPLIED
  305. >
  306.  
  307. <!--=================== Scripts ===========================================-->
  308.  
  309. <!ELEMENT SCRIPT - - (#PCDATA)>
  310. <!ATTLIST SCRIPT
  311.     LANGUAGE CDATA #IMPLIED
  312.     >
  313.  
  314. <!--=================== Document Body =====================================-->
  315.  
  316. <![ %HTML.Recommended [
  317.     <!ENTITY % body.content "(%heading|%block|HR|ADDRESS)*"
  318.     -- <h1>Heading</h1>
  319.        <p>Text ...
  320.         is preferred to
  321.        <h1>Heading</h1>
  322.        Text ...
  323.     -->
  324. ]]>
  325.  
  326. <!ENTITY % body.content "(%heading | %text | %block | HR | ADDRESS |
  327.               SCRIPT | FRAMESET | NOFRAMES )*">
  328.  
  329. <!ELEMENT BODY O O  %body.content>
  330.  
  331. <!ATTLIST BODY
  332.     BACKGROUND CDATA #IMPLIED
  333.     BGCOLOR CDATA #IMPLIED
  334.     WIDTH NUTOKEN #IMPLIED
  335.     HEIGHT NUTOKEN #IMPLIED
  336.     TEXT CDATA #IMPLIED
  337.     LINK CDATA #IMPLIED
  338.     VLINK CDATA #IMPLIED
  339.     ALINK CDATA #IMPLIED
  340. >
  341.  
  342. <!ELEMENT BLOCKQUOTE - - %body.content>
  343.  
  344. <![ %HTML.Recommended [
  345.     <!ENTITY % address.content "(%text)*">
  346. ]]>
  347. <!ENTITY % address.content "(%text|P)*">
  348. <!ELEMENT ADDRESS - - %address.content>
  349.  
  350.  
  351. <!--================ Forms ===============================================-->
  352.  
  353. <![ %HTML.Forms [
  354.  
  355. <!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
  356. <!ATTLIST FORM
  357.     ACTION %URI #REQUIRED
  358.     METHOD (%HTTP-Method) GET
  359.     ENCTYPE %Content-Type; "application/x-www-form-urlencoded"
  360.     >
  361.  
  362. <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |
  363.             RADIO | SUBMIT | RESET |
  364.             IMAGE | HIDDEN )">
  365. <!ELEMENT INPUT - O EMPTY>
  366. <!ATTLIST INPUT
  367.     TYPE %InputType TEXT
  368.     NAME CDATA #IMPLIED -- required for all but submit and reset --
  369.     VALUE CDATA #IMPLIED
  370.     SRC %URI #IMPLIED -- for image inputs -- 
  371.     CHECKED (CHECKED) #IMPLIED
  372.     SIZE CDATA #IMPLIED -- like NUMBERS,
  373.                  but delimited with comma, not space --
  374.     MAXLENGTH NUMBER #IMPLIED
  375.     ALIGN (top|middle|bottom) #IMPLIED
  376.     >
  377.  
  378. <!ELEMENT SELECT - - (OPTION+)>
  379. <!ATTLIST SELECT
  380.     NAME CDATA #REQUIRED
  381.     SIZE NUMBER #IMPLIED
  382.     MULTIPLE (MULTIPLE) #IMPLIED
  383.     >
  384.  
  385. <!ELEMENT OPTION - O (#PCDATA)>
  386. <!ATTLIST OPTION
  387.     SELECTED (SELECTED) #IMPLIED
  388.     VALUE CDATA #IMPLIED
  389.     >
  390.  
  391. <!ELEMENT TEXTAREA - - (#PCDATA)>
  392. <!ATTLIST TEXTAREA
  393.     NAME CDATA #REQUIRED
  394.     ROWS NUMBER #REQUIRED
  395.     COLS NUMBER #REQUIRED
  396.     >
  397.  
  398. ]]>
  399.  
  400.  
  401. <!--================ Document Head ========================================-->
  402.  
  403. <!ENTITY % head.link "& LINK*">
  404.  
  405. <![ %HTML.Recommended [
  406.     <!ENTITY % head.nextid "">
  407. ]]>
  408. <!ENTITY % head.nextid "& NEXTID?">
  409.  
  410. <!ENTITY % head.content "TITLE? & SCRIPT? & ISINDEX? & BASE? & META*
  411.              %head.nextid
  412.              %head.link">
  413.  
  414. <!ELEMENT HEAD O O  (%head.content)>
  415.  
  416. <!ELEMENT LINK - O EMPTY>
  417. <!ATTLIST LINK
  418.     HREF %URI #REQUIRED
  419.         %linkExtraAttributes; >
  420.  
  421. <!ELEMENT ISINDEX - O EMPTY>
  422. <!ATTLIST ISINDEX
  423.     PROMPT CDATA "This is a searchable index. Enter search keywords:">
  424.  
  425. <!ELEMENT BASE - O EMPTY>
  426. <!ATTLIST BASE
  427.         HREF %URI; #REQUIRED
  428.         >
  429.  
  430. <!ELEMENT NEXTID - O EMPTY>
  431. <!ATTLIST NEXTID N %linkName #REQUIRED>
  432.  
  433. <!ELEMENT META - O EMPTY    -- Generic Metainformation -->
  434. <!ATTLIST META
  435.         HTTP-EQUIV  NAME    #IMPLIED  -- HTTP response header name  --
  436.         NAME        NAME    #IMPLIED  -- metainformation name       --
  437.         CONTENT     CDATA   #REQUIRED -- associated information     --
  438.         >
  439.  
  440.  
  441. <!--================ Document Structure ===================================-->
  442.  
  443. <![ %HTML.Deprecated [
  444.     <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
  445. ]]>
  446. <!ENTITY % html.content "HEAD, BODY">
  447.  
  448. <!ELEMENT HTML O O  (%html.content)>
  449. <!ENTITY % version.attr "VERSION CDATA #FIXED "%HTML.Version;"">
  450.  
  451. <!ATTLIST HTML
  452.     %version.attr;-- report DTD version to application --
  453.     >
  454.  
  455.  
  456. <!-- Applets -->
  457.  
  458. <!ENTITY % applet.other.content "((%heading)|(%text)|(%list)|DL|HR|P)">
  459.  
  460. <!ELEMENT APPLET - - (PARAM*, (%applet.other.content;)*) -(APPLET)>
  461. <!ATTLIST APPLET
  462.     CODEBASE CDATA #IMPLIED    -- code base --
  463.     CODE CDATA #IMPLIED    -- code name (class name) --
  464.     NAME CDATA #IMPLIED    -- the applet name --
  465.     ALT CDATA #IMPLIED    -- alternate text --
  466.     WIDTH NUTOKEN #REQUIRED
  467.     HEIGHT NUTOKEN #REQUIRED
  468.     ALIGN (left|right|top|texttop|middle|
  469.         absmiddle|baseline|bottom|absbottom) baseline
  470.     VSPACE NUMBER #IMPLIED
  471.     HSPACE NUMBER #IMPLIED
  472. >
  473.  
  474. <!ELEMENT PARAM - O EMPTY>
  475. <!ATTLIST PARAM
  476.     NAME NAME #REQUIRED    -- The name of the parameter --
  477.     VALUE CDATA #IMPLIED    -- The value of the parameter --
  478. >
  479.  
  480. <!ELEMENT APP - O EMPTY>
  481. <!ATTLIST APP
  482.     CLASS CDATA #IMPLIED
  483.     SRC CDATA #IMPLIED
  484.     WIDTH NUMBER #REQUIRED
  485.     HEIGHT NUMBER #REQUIRED
  486. >
  487.  
  488. <!ELEMENT FRAMESET - O (FRAMESET|FRAME|NOFRAMES)*>
  489. <!ATTLIST FRAMESET
  490.     ROWS CDATA #IMPLIED
  491.     COLS CDATA #IMPLIED
  492. >
  493.  
  494. <!ELEMENT FRAME - O EMPTY>
  495. <!ATTLIST FRAME
  496.     SRC CDATA #IMPLIED
  497.     NAME CDATA #IMPLIED
  498.     MARGINWIDTH NUMBER #IMPLIED
  499.     MARGINHEIGHT NUMBER #IMPLIED
  500.     SCROLLING (YES|NO|AUTO) AUTO
  501.     NORESIZE (NORESIZE) #IMPLIED
  502. >
  503.  
  504. <!ELEMENT NOFRAMES - - CDATA>
  505.  
  506. <!--=================== Tables =========================================-->
  507.  
  508. <!ELEMENT TABLE - - (TR|CAPTION)*>
  509. <!ATTLIST TABLE
  510.     BORDER NUMBER 0
  511.     CELLPADDING NUMBER #IMPLIED
  512.     CELLSPACING NUMBER #IMPLIED
  513.     WIDTH CDATA #IMPLIED
  514.     HEIGHT CDATA #IMPLIED
  515. >
  516.  
  517. <!ELEMENT TR - - (TD | TH)*>
  518. <!ELEMENT TD - - (TH | %text;)*>
  519. <!ELEMENT TH - - (%text;)*>
  520.  
  521. <!ATTLIST (TR|TD|TH)
  522.     ROWSPAN NUMBER #IMPLIED
  523.     COLSPAN NUMBER #IMPLIED
  524.     ALIGN (LEFT|RIGHT|CENTER) CENTER
  525.     VALIGN (TOP|MIDDLE|BOTTOM|BASELINE) BASELINE
  526.     WIDTH CDATA #IMPLIED
  527.     HEIGHT CDATA #IMPLIED
  528. >
  529.  
  530.  
  531. <!ELEMENT CAPTION - - (%text;)*>
  532. <!ATTLIST CAPTION
  533.     ALIGN (TOP|BOTTOM) TOP
  534. >
  535.